<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Vue数据代理机制对属性名的要求</title>
    <!-- 安装vue：当你使用script进行vue安装之后，上下文就注册了一个全局变量 Vue -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>

<body>
    <!-- 
        1. Vue实例不会给以 _ 和 $ 开始的属性名做数据代理。

        2. 为什么？
            如果允许gei _ 或 $ 开始的属性名做数据代理的话
            vm这个Vue实例上可能会出现 _xxxx 或 $xxxx属性
            而这个属性名可能会和Vue框架自身的属性名冲突
            
        3. 在Vue中，给data对象的属性名进行命名的时候，不能以 _ 和 $ 开始
    -->

    <!-- 准备一个容器 -->
    <div id="app">
        <h1>{{msg}}</h1>
    </div>

    <!-- vue程序 -->
    <script>

        const vm = new Vue({
            el: '#app',
            data: {
                msg: 'Hello Vue!',
                _name: 'zhangsan',
                $age: 20
            }
        })

    </script>
</body>

</html>